# 二开推荐阅读[如何提高项目构建效率](https://developers.weixin.qq.com/miniprogram/dev/wxcloudrun/src/scene/build/speed.html)
# 选择构建用基础镜像（选择原则：在包含所有用到的依赖前提下尽可能体积小）。如需更换，请到[dockerhub官方仓库](https://hub.docker.com/_/python?tab=tags)自行选择后替换。
# 已知alpine镜像与pytorch有兼容性问题会导致构建失败，如需使用pytorch请务必按需更换基础镜像。
FROM ccr.ccs.tencentyun.com/mkmk-common/juqi:npm-deploy-env as build-ui

FROM ccr.ccs.tencentyun.com/mkmk-common/juqi:py-deploy-env as build-server

# 拷贝当前项目到/app目录下(.dockerignore中文件除外)
COPY ./juqi_server /app
COPY ./juqi_server/nginx.conf /etc/nginx/nginx.conf

COPY --from=build-ui /app/dist /app/dist

# 暴露端口
# 此处端口必须与「服务设置」-「流水线」以及「手动上传代码包」部署时填写的端口一致，否则会部署失败。
EXPOSE 80

# 执行启动命令
# 写多行独立的CMD命令是错误写法！只有最后一行CMD命令会被执行，之前的都会被忽略，导致业务报错。
# 请参考[Docker官方文档之CMD命令](https://docs.docker.com/engine/reference/builder/#cmd)
CMD ["/bin/sh", "/app/script/start_server.sh"]
